package com.wzdigit.wms.basic.client.request.asn.other;

import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import com.fasterxml.jackson.annotation.JsonInclude;
import com.wzdigit.wms.basic.client.Pager;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.springframework.format.annotation.DateTimeFormat;

import java.io.Serializable;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;

;

@EqualsAndHashCode(callSuper = true)
@Data
@JsonInclude(JsonInclude.Include.NON_NULL)
@JsonIgnoreProperties(value = {"hibernateLazyInitializer", "handler", "fieldHandler"}, ignoreUnknown = true)
public class SearchOtherInOrderRequest<T> extends Pager<T> implements Serializable {
    private static final long serialVersionUID = -5812482285373909439L;


    @ApiModelProperty(value = "单据编号/源单")
    private String filter;
    /**
     * 单据编号
     */
    @ApiModelProperty(value = "单据编号")
    private String asnNo;

    @ApiModelProperty("原单号")
    private String sourceNo;
    /**
     * 单据类型
     */
    @ApiModelProperty(value = "单据类型")
    private String asnType;
    /**
     * 组织
     */
    @ApiModelProperty(value = "货主")
    private Integer owner;
    /**
     * 组织
     */
    @ApiModelProperty(value = "组织")
    private String factory;
    /**
     * 仓库ID
     */
    @ApiModelProperty(value = "仓库ID")
    private Integer whsId;
    /**
     * 制单日期
     */
    @ApiModelProperty(value = "制单日期")
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    private Date createDate;

    @ApiModelProperty(value = "权限范围内的仓库(不用传)")
    private List<Integer> rangeWhsIds = new ArrayList<>();
}
